home *** CD-ROM | disk | FTP | other *** search
/ PsL Monthly 1993 December / PSL Monthly Shareware CD-ROM (December 1993).iso / prgmming / dos / asm.txt < prev    next >
Encoding:
Text File  |  1993-11-03  |  17.7 KB  |  501 lines

  1. Public (software) Library
  2. Programming Library
  3.  
  4. Descriptions and Compilation Copyright 1993 Nelson Ford
  5. Duplication, reprinting and distribution of these descriptions is restricted.
  6. See LICENSE.DOC in the PSL_NEWS directory for complete information
  7.  
  8.  
  9. =====Assembly Language
  10.  
  11. Contents:
  12.  
  13. -----DOS_ACCS:  assembler routines for accessing DOS, DOS functions, etc.
  14. -----MACROS:  assembler macros
  15. -----MEMORY:  assembler code for TSR's, memory management, etc.
  16. -----COMMUNICA:  assembler routines for communications
  17. -----DAT_TIME:  date and time routines for assembler
  18. -----INPUT:  assembler data entry routines
  19. -----GENERAL: various assembler routines
  20. -----NUMERIC:  assembly source for numeric manipulation
  21. -----SOUNDS:  assm. routines for sound generating
  22. -----ASM_DISM:  assemblers, disassemblers, cross-assemblers
  23. -----TOOLS:   assembler tools
  24. -----HUMOR
  25. -----TUTORS:  assembly language tutorials
  26. -----VIDEO:  assembler video routines
  27. -----SIMULATR:  simulators for other CPUs
  28.  
  29.  
  30. -----DOS_ACCS:  assembler routines for accessing DOS, DOS functions, etc.
  31.  
  32. [CMOS]
  33. CMOS is assembler source for a program that will dump your CMOS data to disk.
  34. The executable is included.
  35.  
  36. [FMT_CAH]
  37. FMT 1.0 (Hardesty, Clair Alan; $10-$25) is the assembler source code (and
  38. executable) for a full-fledged disk formatting utility. Features include fast
  39. formatting, installing the system, bypassing the "insert disk" prompt,
  40. redirectable output, and extensive error trapping.
  41.  
  42. [CHIPS]
  43. Chips (Shea, Pat; $0) is assembler source for processor/coprocessor detection
  44. for V20, 8086, 88, 186, 286, 386 and sort of on the 486. Detects 8087, 287, 387.
  45.  
  46. [CMOSTD]
  47. CMOSTD (Cravener, William; $0) is code for retrieving and displaying CMOS time
  48. and date.
  49.  
  50.  
  51. -----MACROS:  assembler macros
  52.  
  53. [AMACROS]
  54. A-Macros 2.10 (Endoh, Hortens S.; $0) is an assembler macro package for
  55. Microsoft's Macro Assembler MASM to write control structures easier in source
  56. code.
  57.  
  58. [LMS]
  59. LMS 2.50 (Hurukawa, Satoru; $?) is a set of macros to be used with the Optasm
  60. assembler, by SLR Systems. By using these macro sets, you may find it easier to
  61. express certain conditional jumps and labelings. Some routine codes are expanded
  62. automatically with these macros.
  63.  
  64. [8087]
  65. 8087.ASM - codemacros for 8087.
  66.  
  67. [Assemble]
  68. Assemble.MAC - macro library for assemblies.
  69.  
  70. [BIOS]
  71. BIOS data area equates and function call macros.
  72.  
  73. [DOS]
  74. DOS equates, function call macros, and structures.
  75.  
  76. [Equate.INC]
  77. Equate.INC - useful equates for assemblies.
  78.  
  79. [GenkMacA.ASM]
  80. GenkMacA.ASM - library of general purpose macros.
  81.  
  82. [GenlMacB.ASM]
  83. GenlMacB.ASM - library of general purpose macros.
  84.  
  85. [Interupt.MAC]
  86. Interupt.MAC - macros for items that replace BIOS calls.
  87.  
  88. [M8087.MAC]
  89. M8087.MAC - file of macros for 8087 support.
  90.  
  91. [Macro.ASM]
  92. Macro.ASM - DOS Function call macros.
  93.  
  94. [Macro.INC]
  95. Macro.INC - A few DOS service macros.
  96.  
  97. [OneKey.ASM]
  98. OneKey.ASM - make your own macros.
  99.  
  100. [Skeleton.ASM]
  101. Skeleton.ASM - skeleton for coding asm program.
  102.  
  103. [Struct.MAC]
  104. Struct.MAC - structured control macros.
  105.  
  106. [Strutest.ASM]
  107. Strutest.ASM - test program for structured control macros.
  108.  
  109.  
  110. -----MEMORY:  assembler code for TSR's, memory management, etc.
  111.  
  112. [CLOK_SH]
  113. Clok-SH (Hopson, Scott; $0) is the assembler source and executable for a
  114. TSR to display the time in a corner of the screen. In our tests, it quickly
  115. lost time to the system clock, but the code is of interest anyway.
  116.  
  117. [INT5]
  118. INT5 (Giannini, Mario; $0) is assembly language source code and .COM file
  119. for a sample interrupt handler and TSR.
  120.  
  121. [TSRTest]
  122. TSRTest (Thompson, Gary; $0) is assembler source code for a small TSR,
  123. meant to illustrate how to write TSR's.
  124.  
  125. [AMISLIB@]
  126. AMISLIB 0.9 (Brown, Ralf; $0) is source for creating small TSRs which can
  127. load high, detect hot-key con- flicts, and which may be unloaded in any
  128. order. Source for several sample TSRs is included.
  129.  
  130. [CLOCKJC]
  131. Clock (Chavez, Joe L.; $0) is an example of how to create a TSR clock.
  132. Source code included.
  133.  
  134. [CM_INT]
  135. CM_INT (Martin, Charles ASP; $0) is a TSR Interrupt service for Assembly
  136. programmers. It includes editable data entry line with prompt string,
  137. julian date conversion, ASCII string to binary number conversion, screen
  138. and line print services.
  139.  
  140. [PRNWAT]
  141. Printer Watch is ASM code that shows how to write a TSR that monitors
  142. printer activity, allowing you to make character/control substitutions,
  143. etc.
  144.  
  145. [SCBL_SH]
  146. ScBl-SH (Hopson, Scott; $0) is assembler source and executable for a TSR to
  147. blank the screen.
  148.  
  149.  
  150. -----COMMUNICA:  assembler routines for communications
  151.  
  152. [BAUDOT]
  153. Baudot (Hand, Peter; $0) is assembler source for an ASCII-Baudot terminal
  154. emulator.
  155.  
  156.  
  157. -----DAT_TIME:  date and time routines for assembler
  158.  
  159. [DATER1]
  160. Dater is the assembler source, OBJ and LIB files for calculating days
  161. between dates.
  162.  
  163. [DELAYS]
  164. Delays (Cravener, William; $0) creates timed pauses from milliseconds to
  165. minutes.
  166.  
  167. [WAITASM]
  168. Wait (Doyle, J. L.; $0) is a flexible MASM procedure that can be used in
  169. multiple ways within one program. It can be used to cause a delay of
  170. varying length depending on the value of the variable passed to it by the
  171. calling procedure. Though written for MASM, it could easily be modified for
  172. use with high level languages as well.
  173.  
  174.  
  175. -----INPUT:  assembler data entry routines
  176.  
  177. [E_DN]
  178. "E" (E-DN) (Nye, David; $0) is TASM source and executable for a text
  179. editor. Features include block operations and search/replace.
  180.  
  181.  
  182. -----GENERAL: various assembler routines
  183.  
  184. [FUNPCK2]
  185. FunPck2 (Cravener, William; $0) is assembler source code (and executables)
  186. for a collection of utilities: display big print, convert
  187. decimal-hex-binary, change cursor size, display free disk space, display
  188. directory listing, display text files, change files from upper/lower case,
  189. switch monitors.
  190.  
  191. [ASMLib]
  192. ASMLib 3.7 (Herr, Douglas R.; $25-$100) is a collection of 120 subroutines
  193. for assembly language programmers. It features screen manipulation, equipment
  194. detection, a line editor, string manipulation, CGA/Hercules/EGA/VGA/Super
  195. VGA graphics, and much more.
  196.  
  197. [ASMWIZ]
  198. Assembly Wizard's Library 1.6 (Hanlin, Thomas G. III; $29) is a collection
  199. of over 150 routines for programming in assembly language. It includes
  200. sound effects, parsing, advanced file support, mouse handling, string
  201. functions, lightning screen I/O, 32-bit math, high-resolution timers,
  202. graphics support and much more.
  203.  
  204.  
  205. -----NUMERIC:  assembly source for numeric manipulation
  206.  
  207. [NUMVERT]
  208. Numvert (Swift-Ware; $0) contains assembler source code for a utility to
  209. convert decimal, hex, and binary numbers. A compiled executable is also
  210. included.
  211.  
  212. [Pointr]
  213. Pointr (Cravener, William; $0) is commented assembly source code showing
  214. how to change the graphics mouse pointer.
  215.  
  216. [FLOATADD]
  217. Floatadd - floating point addition.
  218.  
  219. [QMath10]
  220. QMath 1.0 (Moser, Roger; $0) is a set of fast 64-bit signed integer
  221. arithmetic routines in assembler.
  222.  
  223.  
  224. -----SOUNDS:  assm. routines for sound generating
  225.  
  226. [FUNPCK3]
  227. FunPck3 (Cravener, William; $0) is a set of six different sound effects:
  228. telephone, phasor, whooper, siren, Cheer, and Ncounter. Assembler source
  229. code is included for each.
  230.  
  231. [FUNPCK4]
  232. FunPck4 (Cravener, William; $0) is a set of more sound effects routines in
  233. assembler (with executables): arcade game sounds, motor, telephone,
  234. falling/rising sound, and a country tune.
  235.  
  236. [IN_OUT]
  237. In-Out (Cravener, William; $0) shows how to create sounds through the PC's
  238. speaker. Source and examples are included.
  239.  
  240. [PORT_IN]
  241. Port-In-Out (Cravener. William; $0) is a tutorial and sample code for
  242. making sounds on the PC's speaker.
  243.  
  244.  
  245. -----ASM_DISM:  assemblers, disassemblers, cross-assemblers
  246.  
  247. [D4851Z]
  248. D4851Z (Post, Jeffery, L.; $0) are intelligent cross disassemblers for the
  249. MCS-48 and 8051/8052 micro- controllers and for the Z80 microprocessor. It
  250. includes D48, a new version of D51, and all new DZ80. ASM and HEX files are
  251. included.
  252.  
  253. [DISASM]
  254. DisASM is a disassembler written in Basic.
  255.  
  256. [LASS]
  257. Little Assembler 1.0 (Mooney, Dorothy R.; $?) is an 8088 assembler for
  258. small programs. It will create only COM files. It is perfect for Q&D jobs
  259. and for laptops with limited disk space - LASS is only 11k. Separate source
  260. files may be linked during assembly.
  261.  
  262. [OBJ2ASM]
  263. OBJ2Asm converts OBJ files to assembler source files.
  264.  
  265. [SIM01]
  266. Sim01 (Lueschow, Kevin; $5) is a debugging tool that simulates a 6801/6800.
  267. It lets you look at and change the registers and memory. It also
  268. disassembles the code that the program counter is about to execute, and
  269. allows you to simulate the interrupts.
  270.  
  271. [ASMGEN]
  272. ASMGen 2.01 (Gersbach, J. and Damke, J.; $?) generates cross-referenced
  273. assembly language code from any executable file.
  274.  
  275. [ASSEMBL]
  276. Assemble (Fulford, George; $10) is a simple assembler for Intel 8088/8086
  277. instruction set, written in TPascal.
  278.  
  279. [Un_Asm]
  280. Un-Asm (Gordon, Guy C.; $20) converts the unassembled listing of a .COM
  281. file from DEBUG into an .ASM file which can be modified and re-assembled
  282. with the Macro assembler.
  283.  
  284. [A86_D86]
  285. A86 & D86 (Isaacson, Eric ASP; $80) is a full-featured, professional-
  286. quality assembler that is as highly compatible with the standard Intel/IBM
  287. assembly language as possible, given design and language enhancements
  288. necessary to make A86 "significantly better" than MASM.
  289. Support for the additional instructions of the IIT-2C87 and the 80387
  290. floating-point coprocessors and compatibility with programs written for
  291. MASM are included. The A86 manual is so thorough that it can be used to
  292. learn 86 assembly language. Also included is an outstanding debugger, D86.
  293. An AFIX package is provided which is a set of machine-readable
  294. specifications for modifying 61 ASM files from PC Magazine's utilities so
  295. that they will assemble under A86.
  296.  
  297. [CHASM]
  298. Chasm (Cheap Assembler) (Whitman, David; $0) is an assembler written in
  299. uncompiled BASIC. This is a good learning tool. It also offers symbolic
  300. debugging support with Trace86 (a commercial product).
  301.  
  302. [CROS_ASM]
  303. Cross Assemblers Series I and II (Micept Instruments Inc.; $49/each) is a
  304. set of two-pass assemblers for the Intel 8051/52, 8044, 8048, 8080, 8085,
  305. 8096, and Z80 cpus. These versions do not support macros, conditional
  306. assembly nor included files, but are otherwise very complete.
  307.  
  308. [DASM]
  309. DASM (Williams, Dave; $0) is a disassembler for 8086 COM files up to 32K in
  310. size. Source code is included.
  311.  
  312. [MD86]
  313. MD86 (Calkins, Clark A.; $18) is an interactive disassembler for taking
  314. Intel 8086 programs apart and generating source code files compatible with
  315. MASM.
  316.  
  317. [TASM]
  318. TASM (Speech Technology Inc.; $30) is a set of table driven cross
  319. assemblers for the MS-DOS environment. Currently versions for the 6502,
  320. 8048, 8051, 8080/8085 and Z80 microprocessors are supported, but you can
  321. also build versions for other 8 bit microprocessors.
  322.  
  323. [YILMAZ]
  324. Yilmaz Disassembler 1.1 (Towfeek, Yilmaz; $25) is an interactive
  325. disassembler. It teaches assembly language by allowing the user to be a
  326. part of the disassembling process. You can disassemble in different modes
  327. such as visibility of machine codes, visibility of data labels and using
  328. different data format. Requires 400K free memory.
  329.  
  330. [ZanySoft]
  331. ZanySoft Debugger (Kirmse, Christopher; $25) is a symbolic debugger for
  332. most common assemblers such as MASM, TASM, and A86. Features include pull
  333. down menus, multiple movable and resizable windows, quick-key combinations,
  334. and macros. It is fast, easy and only 40K.
  335.  
  336.  
  337. ----TOOLS:   assembler tools
  338.  
  339. [A86_MAKE]
  340. A86_Make is a Make batch file for the shareware assembler, "A86".
  341.  
  342. [ASMFLO]
  343. AsmFlow (Quantum Software; $0) generates flow charts, tree diagrams and
  344. provides a variety of other functions for assembly language programmers.
  345.  
  346. [ASSEM]
  347. Assem (Richwell, Gunner; $5) contains several programs: FOFFSET.COM will
  348. compute the offset value for a given segment:offset combination and a new
  349. segment value. FPHYS.COM will compute the physical address value for a given
  350. segment:offset combination. FSEGMENT.COM will compute the segment value for a
  351. given segment:offset combination and a new offset value.
  352.  
  353. [FPANEL]
  354. FPanel is a PC Front Panel Simulation. It displays the contents of the IP,
  355. FLAG, SS, ES and DS registers at the top of the screen. Assembler source is
  356. included. (res:1k)
  357.  
  358. [MPUBLIC]
  359. MPublic 2.0 (Derouen, Craig; $0) parses MASM and TASM source files and builds
  360. a public statement file for all symbols for use with debuggers. It
  361. automatically excludes local labels as defined by MASM and TASM. Includes C
  362. source code.
  363.  
  364. [CASE]
  365. Case (Bly, Vincent; $0) is for assembly language programmers who wish to write
  366. their source in all caps and their comments in lower case. It provides
  367. automatic case switching and indicates the current case by the shape of the
  368. cursor.
  369.  
  370. [DISP_REG]
  371. Disp-Reg (Gilbrech, Skip; $?) will display registers as set by loader.
  372.  
  373. [LOAD]
  374. Load (Laboratory Microsystems; $?) will load .COM files bigger than 64k.
  375.  
  376. [OBJSNOOP]
  377. ObjSnoop - will find and display label references in .OBJ files.
  378.  
  379. [OPER]
  380. Oper (Duncan, Ray; $?) will test Microsoft assembler operators, show operation
  381. of various operators and demonstrate some notational idiosyncracies.
  382.  
  383. [PRHEX]
  384. PRHex - displays 4 hexadecimal numbers contained in AX.
  385.  
  386. [PX]
  387. PX Procedure Cross Referencer (Dunford, Christopher J.; $?) is a procedure
  388. documenter. It allows you to print out all of the procedure prologues in a
  389. "dictionary" and to then print a cross reference of all procedural calls;
  390. i.e., a listing of which procs call which procs.
  391.  
  392. [REPRTJJ]
  393. Report (Johnsen, James L.; $0) will return a report of what is in what
  394. register when the program enters.
  395.  
  396. [Snap_D]
  397. Snap_D (Gentry, Don; $?) is a user written interrupt service routine. It is
  398. designed for assembly language programmers to provide debugging assistance. It
  399. will print selected portions of memory when invoked.
  400.  
  401. [TRACE2]
  402. Trace02 (Fricano, C. P.; $?) will display the current values of the CS:IP
  403. registers. The CS:IP can be sampled a maximum of 18 times per second. This
  404. program must be the last inperupt handler loaded.
  405.  
  406. [UAsm_Lst]
  407. UAsm-Lst.BAS removes addresses from files created from debug unassemble script
  408. files and inserts labels. A script file (ASCII) is created with the debug
  409. instructions.
  410.  
  411.  
  412. -----HUMOR
  413.  
  414. [INSTRUC]
  415. Humorous Assembler Instruction Set (American Gumby Corporation; $0) is a very
  416. old set of Assembly Language Mnemonics with a humorous twist.
  417.  
  418. [RealProg.TXT]
  419. RealProg.TXT - definition of a "real programmer".
  420.  
  421.  
  422. -----TUTORS:  assembly language tutorials
  423.  
  424. [ASMTUTR]
  425. Assembly Language Tutorial (ASMTUTR) (Auerbach, Joshua; $0) is a beginner's
  426. tutorial in Assembler. It includes the 8086/8088 instruction set.
  427.  
  428. [MACHO]
  429. (Groff Software; $5-$20) in Assembly Language. It starts with a discussion of
  430. HEX arithmetic, touches on such basic tasks as multiplication and division,
  431. and ends with some advanced ideas such as BIN addition. This 14-Lesson course
  432. covers ground slowly and thoroughly and there are many tests to make sure you
  433. understand everything as you go along. It can be used with nothing more than
  434. DEBUG and no assembly language program is required.
  435.  
  436. [PC_ASSEM]
  437. The PC Assembler Helper and Tutor (Nelson, Chuck; $10) is a program and
  438. tutorial designed to help those who are just starting to learn assembly
  439. language as well as those who know some assembler instructions, but want to
  440. have a firmer grasp of the complete instruction set for the 8086. It supports
  441. both Turbo Assembler and A86.
  442.  
  443. PCAHT provides input and output of all standard 8086/8087 integral data types.
  444. These include 1 byte, 2 byte, 4 byte and 8 byte signed and unsigned numbers
  445. along with 1 byte and 2 byte hex, ASCII and binary data. Lastly, there is I/O
  446. for 10 byte BCD numbers.
  447.  
  448. The interface has been designed so that beginners can use it with a minimum of
  449. trouble. There are also 30 pages of help for those BASIC programmers who want
  450. to use assembler language.
  451.  
  452. [TRNCOMP]
  453. Training Computer (Castle Oaks Computer Services; $10) is a tutorial on
  454. machine and assembly languages. It includes a computer simulator and assembly
  455. programs; lessons in their use; example programs; and question and answer
  456. exercises.
  457.  
  458.  
  459. -----VIDEO:  assembler video routines
  460.  
  461. [LAMBDA]
  462. Lambda (Duro, Albert; $0) demonstrates how to use Interrupt 10H, Function 11H,
  463. Subfunction 0, to create an alternate character and substitute it for the
  464. default characters.
  465.  
  466. [SCRNSAV]
  467. ScreenSave (SCRNSAV) (Barlow, Troy; $0) is a MASM routine that demonstrates
  468. using DOS from a TSR. It saves a MCGA 256-color palette and screen to disk.
  469.  
  470. [Shadow]
  471. Shadow (Cravener, William; $0) is assembler code which shows how to create a
  472. shadowed window box, as well as how to save a copy of the current video screen
  473. contents, fill the screen with a background, pop down a window box, shadow the
  474. window box along the right and bottom sides, wait for a keypress then restore
  475. original screen contents.
  476.  
  477. [Window1]
  478. Window1 (Blanford, Joe; $?) is actually a demo of how to make and use windows
  479. with machine language programs for MS-DOS. The source code is provided to
  480. allow you to modify and integrate it into your programs for better displays
  481. using colored windows.
  482.  
  483.  
  484. -----SIMULATR:  simulators for other CPUs
  485.  
  486. [PC370@_1, PC370@_2, PC370@_3]
  487. PC/370 (Higgins, Donald S.; $45) is a PC/370 Virtual Machine. The PC/370
  488. package provides the capability to assemble, link, and execute IBM 370
  489. assembler programs on any 80x86 MSDOS micro computer such as the IBM PC, XT,
  490. or AT.
  491.  
  492. [Sim85]
  493. Sim85 (Lueschow, Kevin; $15) is an 8085 simulator that assists in writing code
  494. for the 8085 processor. It shows code, memory, ports, and registers
  495. simultaneously while allowing you to step through or run through the code
  496. non-stop.
  497.  
  498. [SIM68]
  499. SIM68 (Fisch, Perry J.; $25) S19 object code. EGA/VGA monitor is required to
  500. support the I/O and A/D simulator modules. 512K is also required.
  501.